home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / include / linux / eventpoll.h < prev    next >
C/C++ Source or Header  |  2009-10-16  |  1KB  |  55 lines

  1. /*
  2.  *  include/linux/eventpoll.h ( Efficent event polling implementation )
  3.  *  Copyright (C) 2001,...,2006     Davide Libenzi
  4.  *
  5.  *  This program is free software; you can redistribute it and/or modify
  6.  *  it under the terms of the GNU General Public License as published by
  7.  *  the Free Software Foundation; either version 2 of the License, or
  8.  *  (at your option) any later version.
  9.  *
  10.  *  Davide Libenzi <davidel@xmailserver.org>
  11.  *
  12.  */
  13.  
  14. #ifndef _LINUX_EVENTPOLL_H
  15. #define _LINUX_EVENTPOLL_H
  16.  
  17. /* For O_CLOEXEC */
  18. #include <linux/fcntl.h>
  19. #include <linux/types.h>
  20.  
  21. /* Flags for epoll_create1.  */
  22. #define EPOLL_CLOEXEC O_CLOEXEC
  23.  
  24. /* Valid opcodes to issue to sys_epoll_ctl() */
  25. #define EPOLL_CTL_ADD 1
  26. #define EPOLL_CTL_DEL 2
  27. #define EPOLL_CTL_MOD 3
  28.  
  29. /* Set the One Shot behaviour for the target file descriptor */
  30. #define EPOLLONESHOT (1 << 30)
  31.  
  32. /* Set the Edge Triggered behaviour for the target file descriptor */
  33. #define EPOLLET (1 << 31)
  34.  
  35. /* 
  36.  * On x86-64 make the 64bit structure have the same alignment as the
  37.  * 32bit structure. This makes 32bit emulation easier.
  38.  *
  39.  * UML/x86_64 needs the same packing as x86_64
  40.  */
  41. #ifdef __x86_64__
  42. #define EPOLL_PACKED __attribute__((packed))
  43. #else
  44. #define EPOLL_PACKED
  45. #endif
  46.  
  47. struct epoll_event {
  48.     __u32 events;
  49.     __u64 data;
  50. } EPOLL_PACKED;
  51.  
  52.  
  53. #endif /* #ifndef _LINUX_EVENTPOLL_H */
  54.  
  55.